package com.iwhalecloud.bss.kite.cucc.service.attr.linkhandler;

import com.iwhalecloud.bss.kite.common.util.KiteStringUtils;
import com.iwhalecloud.bss.kite.cucc.service.attr.LocalAttrHelper;
import com.iwhalecloud.bss.kite.cucc.service.attr.handler.LocalUseTypeAttrHandler;
import com.iwhalecloud.bss.kite.listener.handler.attr.annotation.AttrHandler;
import com.iwhalecloud.bss.kite.listener.handler.attr.impl.AbstractAttrLinkageHandler;
import com.iwhalecloud.bss.kite.manager.inst.KiteAttr;
import com.iwhalecloud.bss.kite.manager.inst.KiteInst;
import com.iwhalecloud.bss.kite.service.attr.AttrData;
import org.springframework.stereotype.Service;

import java.util.Objects;

/**
 * <Description> <br>
 *
 * @author cheng.leizhen01<br>
 * @version 1.0<br>
 * @taskId <br>
 * @CreateDate 2021年3月16日 <br>
 * @since R9.0<br>
 * @see com.iwhalecloud.bss.kite.cucc.service.attr.linkhandler <br>
 */
@Service
@AttrHandler(LocalUseTypeAttrHandler.class)
public class LocalUseTypeAttrLinkHandler extends AbstractAttrLinkageHandler<AttrData> {
    /**
     * 合作减免时间	当使用类型值为‘客户项目关联’、‘联通平台关联’、‘公免（客户名称必须为联通公司）’时显示且为必填
     * 测试截止时间	当使用类型值为‘客户测试电路’时显示且必填
     */

    @Override
    public void handle(KiteAttr attr, KiteInst inst, AttrData data) {
        if (Objects.isNull(attr)) {
            return;
        }
        //合作减免时间 200001972
        //测试截止时间 200001971
        //当使用类型值为‘客户项目关联’、‘联通平台关联’、‘公免（客户名称必须为联通公司）’时显示且为必填
        if(KiteStringUtils.equalsAny(attr.getValue(),"100002790","100002791","100002793")){
            LocalAttrHelper.showAndNotNull(inst, "200001972");
        } else {
            LocalAttrHelper.hideAndNullable(inst, "200001972");
        }

        // 当使用类型值为‘客户测试电路’时显示且必填
        if (KiteStringUtils.equalsAny(attr.getValue(),"100002792")) {
            LocalAttrHelper.showAndNotNull(inst, "200001971");
        } else {
            LocalAttrHelper.hideAndNullable(inst, "200001971");
        }
    }

    @Override
    public void handleStyle(KiteAttr attr, KiteInst inst, AttrData data) {

    }

}
